package com.ruoyi.lvlian.mapper;

import java.util.List;
import com.ruoyi.lvlian.domain.ContractBalance;
import org.apache.ibatis.annotations.Param;

/**
 * 合同额度Mapper接口
 * 
 * @author liyuxi
 * @date 2025-06-27
 */
public interface ContractBalanceMapper 
{
    /**
     * 查询合同额度
     * 
     * @param id 合同额度主键
     * @return 合同额度
     */
    public ContractBalance selectContractBalanceById(String id);

    /**
     * 查询合同额度列表
     * 
     * @param contractBalance 合同额度
     * @return 合同额度集合
     */
    public List<ContractBalance> selectContractBalanceList(ContractBalance contractBalance);

    /**
     * 新增合同额度
     * 
     * @param contractBalance 合同额度
     * @return 结果
     */
    public int insertContractBalance(ContractBalance contractBalance);

    /**
     * 修改合同额度
     * 
     * @param contractBalance 合同额度
     * @return 结果
     */
    public int updateContractBalance(ContractBalance contractBalance);

    /**
     * 删除合同额度
     * 
     * @param id 合同额度主键
     * @return 结果
     */
    public int deleteContractBalanceById(String id);

    /**
     * 批量删除合同额度
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteContractBalanceByIds(String[] ids);

    double queryUsedBalanceByIdCard(@Param("idCard")String idCard, @Param("startDate")String startDate, @Param("endDate")String endDate);
}
